1.1. Field of the Invention
The present invention relates to the field of network computing, and in particular to Web contents accessible via a Portal. It particularly relates to a method and system for controlling the layout of markup fragments of a plurality of Portlets aggregated in web pages of a web Portal.
1.2. Description and Disadvantages of Prior Art
FIG. 1 gives a schematic system view on a web server implementing such prior art web Portal.
A prior art Portal as e.g., represented by above IBM WebSphere Portal or by Jetspeed2 Enterprise Portal is built by a complex functionality implemented on a network server—for example a web server 100, the most important of which are logic components for user authentication 105, state handling 110, aggregation 115 of fragments, a plurality of Portlets 120—further described below—provided in respective pages 125 with a respective plurality of APIs 130 to a respective Portlet container software 135 for setting them into the common web page context, and some Portal storage resources 140. The logic components are operatively connected such that data can be exchanged between single components as required. This is roughly depicted in FIG. 1.
In more detail, the Portal engine of the web server in FIG. 1 implements an aggregation of Portlets 120 based on the underlying Portal model and Portal information such as security settings, user roles, customization settings, and device capabilities. Within the rendered page, the Portal automatically generates the appropriate set of navigation elements based on the Portal model.
The Portal engine invokes Portlets during the aggregation as required and when required and uses caching to reduce the number of requests made to Portlets. The prior art IBM WebSphere Portal employs open standards such as the Java Portlet API (application programming interface). It also supports the use of a remote Portlet via the WSRP standard.
The Portlet container 135 is a single control component competent for all Portlets 120, which may control the execution of code residing in each of these Portlets. It provides the runtime environment for the Portlets and facilities for event handling, inter-Portlet messaging, and access to Portlet instance and configuration data, among others. The Portal resources 140 are in particular the Portlets themselves and the pages on which they are aggregated in form of an aggregation of fragments.
FIG. 2 depicts prior art interactions in a Portal during the render request processing.
A client 22 is depicted left, depicting the display of the Portlet markup A, B, and C of respective Portlets in the client Browser. The Portal container 135 in the central portion and the diverse Portlets 120 ((A, B, C) are depicted right. The communication is based on requests which are expressed in the depicted arrows.
In particular, the client issues a render request 26, e.g. for a new page, by clicking on a “clickable item” displayed in its Browser window. To render this new page, the Portal—after receiving the render request 26—determines the respective Portlets on the page and sends an own render request 27 to each Portlet through the Portlet container 135, as implemented e.g. in above mentioned IBM Websphere product implemented thus as a Portal component.
In prior art, each Portlet A, B and C creates its own markup independently and returns the markup fragment with the respective request response 28. The Portal aggregates the markup fragments and returns the new page 22′ to the client in a respective response 29.
As a person skilled in the art may appreciate the prior art Portal cannot control the layout of the content generated by a Portlet, i.e. the Portal cannot influence the format or layout of the Portlets markup fragment. This is disadvantageously a significant obstacle for implementing a consistent “look and feel” of a Web page containing multiple Portlets, since each Portlet independently chooses the layout or the format of its markup fragment, not taking into account the format of other fragments associated with other Portlets on the same Web site. Thus, the diverse formats and layouts of the Portlet representations in the Browser provide difficulties to a User at the Portal to utilize them in a simple single way.